SMT Oscillator: Smarter Money Divergence Detector [PhenLabs]📊Phenlabs - SMT Oscillator: Smarter Money Divergence Detector
Version: PineScript™v6
📌Description
The SMT Oscillator is a sophisticated tool designed to identify smart money divergence between two correlated assets. By analyzing the momentum and volume-weighted price action of a primary and secondary symbol, traders can spot subtle shifts in market dynamics that often precede significant price movements. This indicator is built to provide a clearer, more filtered view of inter-market relationships, solving the common problem of false signals and market noise. Its primary purpose is to equip traders with a quantifiable edge in detecting potential reversals or continuations that are not obvious on a standard price chart.
🚀Points of Innovation
Dual-Symbol Divergence Core: Directly compares momentum (RSI or MACD) between two user-selected symbols to pinpoint true SMT divergence.
Volume-Weighted Analysis: Integrates volume delta into the divergence calculation, giving more weight to moves backed by significant market participation.
Entropy Filter for Noise Reduction: Employs an entropy calculation to filter out low-quality signals during choppy or consolidating market conditions.
Predictive Forecast Line: Utilizes a linear regression model to project the oscillator’s future trajectory, offering a forward-looking glimpse of potential momentum shifts.
Customizable Signal Sensitivity: Allows fine-tuning of overbought and oversold levels to adapt to different market volatilities and trading styles.
Integrated Signal Alerts: Provides built-in alerts for bullish/bearish zero crosses and overbought/oversold conditions.
🔧Core Components
Momentum Engine: The user can select either RSI or MACD as the underlying engine for the divergence calculation, allowing for flexibility in analysis.
Normalization Function: Price data from both symbols is normalized using percentage change to ensure a true “apples-to-apples” comparison, regardless of their nominal price differences.
Divergence Calculator: The core algorithm that subtracts the secondary symbol’s momentum from the primary’s and normalizes the result using the combined standard deviation.
Smoothing Mechanism: An Exponential Moving Average (EMA) is applied to the raw oscillator output to reduce choppiness and provide a clearer signal line.
🔥Key Features
Multi-Asset Comparison: Go beyond single-asset analysis by comparing correlated pairs like ES/NQ or BTC/ETH to uncover hidden trading opportunities.
Heatmap Visualization: An optional heatmap mode provides an intuitive visual representation of divergence strength, making it easier to gauge market sentiment at a glance.
Configurable Lookback and Timeframe: Adjust the lookback period and analysis timeframe to suit your specific strategy, from short-term scalping to long-term trend analysis.
Signal Markers: Visual markers are plotted directly on the chart for bullish and bearish zero-line crossovers, providing clear entry and exit signals.
🎨Visualization
SMT Oscillator Line: The primary visual element, colored blue for bullish (positive) divergence and orange for bearish (negative) divergence.
Zero Line: A solid horizontal line at the zero level, indicating the equilibrium point between the two assets. Crossovers of this line signal a shift in relative strength.
Overbought/Oversold Zones: Dotted lines at the +80 and -80 levels (customizable) that highlight extreme divergence readings, often indicating potential exhaustion points.
Forecast Line: A predictive line that plots the anticipated path of the oscillator, giving traders an advanced warning of potential changes in momentum.
📖Usage Guidelines
Setting Categories
Primary Symbol
Default: (Chart Symbol)
Description: The main asset you are analyzing. Leave blank to use the symbol currently on your chart.
Secondary Symbol
Default: CME_MINI:ES1! (used with NASDAQ futures due to inherent heavy correlation
Description: The asset to compare against the primary symbol.
Lookback Period
Default: 14
Range: 8-100
Description: Controls the calculation window for momentum (RSI/MACD). Higher values result in a smoother, less sensitive oscillator.
Divergence Type
Default: RSI
Options: RSI, MACD
Description: Choose the momentum indicator to use for the divergence calculation.
Enable Volume Weighting
Default: true
Description: When enabled, gives more weight to divergence signals that are accompanied by significant volume.
✅Best Use Cases
Identifying high-probability reversal points by spotting divergence in overbought or oversold territory.
Confirming the strength of a trend by observing sustained positive or negative divergence.
Pairs trading by taking a long position on the outperforming asset and a short position on the underperforming one during a divergence.
Risk management by recognizing when a current trend is losing its underlying momentum.
⚠️Limitations
Requires Correlated Assets: The indicator’s effectiveness is highly dependent on the selection of two assets with a known correlation (e.g., ES and NQ).
Not a Standalone System: Divergence signals should be used in conjunction with other forms of analysis (price action, market structure) and not as a complete trading system.
Lagging by Nature: As it is based on moving averages and past price data, the oscillator is inherently lagging and may not capture all rapid price changes.
💡What Makes This Unique
Combined Momentum & Volume: Unlike standard oscillators, it fuses momentum with volume delta for a more robust “Smart Money” perspective.
Noise-Filtering Mechanism: The proprietary entropy filter is a unique feature designed to weed out insignificant market chatter and focus on high-conviction signals.
🔬How It Works
Data Normalization:
The script first normalizes the price data of the two selected symbols into percentage changes. This ensures that the comparison is fair, regardless of the difference in their price scales.
Momentum Calculation:
It then calculates the chosen momentum value (either RSI or MACD histogram) for each of the normalized price series.
Divergence Computation:
The core of the indicator lies in subtracting the momentum of the secondary symbol from the primary one. This raw divergence is then optionally weighted by volume and filtered for market noise (entropy) to produce the final oscillator value.
💡Note:
For best results, use this indicator on adequate timeframes to filter out market noise. Always confirm signals with price action analysis before entering a trade.
Search in scripts for "relative strength"
Magnificent 7 OscillatorThe Magnificent 7 Oscillator is a sophisticated momentum-based technical indicator designed to analyze the collective performance of the seven largest technology companies in the U.S. stock market (Apple, Microsoft, Alphabet, Amazon, NVIDIA, Tesla, and Meta). This indicator incorporates established momentum factor research and provides three distinct analytical modes: absolute momentum tracking, equal-weighted market comparison, and relative performance analysis. The tool integrates five different oscillator methodologies and includes advanced breadth analysis capabilities.
Theoretical Foundation
Momentum Factor Research
The indicator's foundation rests on seminal momentum research in financial markets. Jegadeesh and Titman (1993) demonstrated that stocks with strong price performance over 3-12 month periods tend to continue outperforming in subsequent periods¹. This momentum effect was later incorporated into formal factor models by Carhart (1997), who extended the Fama-French three-factor model to include a momentum factor (UMD - Up Minus Down)².
The momentum calculation methodology follows the academic standard:
Momentum(t) = / P(t-n) × 100
Where P(t) is the current price and n is the lookback period.
The focus on the "Magnificent 7" stocks reflects the increasing market concentration observed in recent years. Fama and French (2015) noted that a small number of large-cap stocks can drive significant market movements due to their substantial index weights³. The combined market capitalization of these seven companies often exceeds 25% of the total S&P 500, making their collective momentum a critical market indicator.
Indicator Architecture
Core Components
1. Data Collection and Processing
The indicator employs robust data collection with error handling for missing or invalid security data. Each stock's momentum is calculated independently using the specified lookback period (default: 14 periods).
2. Composite Oscillator Calculation
Following Fama-French factor construction methodology, the indicator offers two weighting schemes:
- Equal Weight: Each active stock receives identical weighting (1/n)
- Market Cap Weight: Reserved for future enhancement
3. Oscillator Transformation Functions
The indicator provides five distinct oscillator types, each with established technical analysis foundations:
a) Momentum Oscillator (Default)
- Pure rate-of-change calculation
- Centered around zero
- Direct implementation of Jegadeesh & Titman methodology
b) RSI (Relative Strength Index)
- Wilder's (1978) relative strength methodology
- Transformed to center around zero for consistency
- Scale: -50 to +50
c) Stochastic Oscillator
- George Lane's %K methodology
- Measures current position within recent range
- Transformed to center around zero
d) Williams %R
- Larry Williams' range-based oscillator
- Inverse stochastic calculation
- Adjusted for zero-centered display
e) CCI (Commodity Channel Index)
- Donald Lambert's mean reversion indicator
- Measures deviation from moving average
- Scaled for optimal visualization
Operational Modes
Mode 1: Magnificent 7 Analysis
Tracks the collective momentum of the seven constituent stocks. This mode is optimal for:
- Technology sector analysis
- Growth stock momentum assessment
- Large-cap performance tracking
Mode 2: S&P 500 Equal Weight Comparison
Analyzes momentum using an equal-weighted S&P 500 reference (typically RSP ETF). This mode provides:
- Broader market momentum context
- Size-neutral market analysis
- Comparison baseline for relative performance
Mode 3: Relative Performance Analysis
Calculates the momentum differential between Magnificent 7 and S&P 500 Equal Weight. This mode enables:
- Sector rotation analysis
- Style factor assessment (Growth vs. Value)
- Relative strength identification
Formula: Relative Performance = MAG7_Momentum - SP500EW_Momentum
Signal Generation and Thresholds
Signal Classification
The indicator generates three signal states:
- Bullish: Oscillator > Upper Threshold (default: +2.0%)
- Bearish: Oscillator < Lower Threshold (default: -2.0%)
- Neutral: Oscillator between thresholds
Relative Performance Signals
In relative performance mode, specialized thresholds apply:
- Outperformance: Relative momentum > +1.0%
- Underperformance: Relative momentum < -1.0%
Alert System
Comprehensive alert conditions include:
- Threshold crossovers (bullish/bearish signals)
- Zero-line crosses (momentum direction changes)
- Relative performance shifts
- Breadth Analysis Component
The indicator incorporates market breadth analysis, calculating the percentage of constituent stocks with positive momentum. This feature provides insights into:
- Strong Breadth (>60%): Broad-based momentum
- Weak Breadth (<40%): Narrow momentum leadership
- Mixed Breadth (40-60%): Neutral momentum distribution
Visual Design and User Interface
Theme-Adaptive Display
The indicator automatically adjusts color schemes for dark and light chart themes, ensuring optimal visibility across different user preferences.
Professional Data Table
A comprehensive data table displays:
- Current oscillator value and percentage
- Active mode and oscillator type
- Signal status and strength
- Component breakdowns (in relative performance mode)
- Breadth percentage
- Active threshold levels
Custom Color Options
Users can override default colors with custom selections for:
- Neutral conditions (default: Material Blue)
- Bullish signals (default: Material Green)
- Bearish signals (default: Material Red)
Practical Applications
Portfolio Management
- Sector Allocation: Use relative performance mode to time technology sector exposure
- Risk Management: Monitor breadth deterioration as early warning signal
- Entry/Exit Timing: Utilize threshold crossovers for position sizing decisions
Market Analysis
- Trend Identification: Zero-line crosses indicate momentum regime changes
- Divergence Analysis: Compare MAG7 performance against broader market
- Volatility Assessment: Oscillator range and frequency provide volatility insights
Strategy Development
- Factor Timing: Implement growth factor timing strategies
- Momentum Strategies: Develop systematic momentum-based approaches
- Risk Parity: Use breadth metrics for risk-adjusted portfolio construction
Configuration Guidelines
Parameter Selection
- Momentum Period (5-100): Shorter periods (5-20) for tactical analysis, longer periods (50-100) for strategic assessment
- Smoothing Period (1-50): Higher values reduce noise but increase lag
- Thresholds: Adjust based on historical volatility and strategy requirements
Timeframe Considerations
- Daily Charts: Optimal for swing trading and medium-term analysis
- Weekly Charts: Suitable for long-term trend analysis
- Intraday Charts: Useful for short-term tactical decisions
Limitations and Considerations
Market Concentration Risk
The indicator's focus on seven stocks creates concentration risk. During periods of significant rotation away from large-cap technology stocks, the indicator may not represent broader market conditions.
Momentum Persistence
While momentum effects are well-documented, they are not permanent. Jegadeesh and Titman (1993) noted momentum reversal effects over longer time horizons (2-5 years).
Correlation Dynamics
During market stress, correlations among the constituent stocks may increase, reducing the diversification benefits and potentially amplifying signal intensity.
Performance Metrics and Backtesting
The indicator includes hidden plots for comprehensive backtesting:
- Individual stock momentum values
- Composite breadth percentage
- S&P 500 Equal Weight momentum
- Relative performance calculations
These metrics enable quantitative strategy development and historical performance analysis.
References
¹Jegadeesh, N., & Titman, S. (1993). Returns to buying winners and selling losers: Implications for stock market efficiency. Journal of Finance, 48(1), 65-91.
Carhart, M. M. (1997). On persistence in mutual fund performance. Journal of Finance, 52(1), 57-82.
Fama, E. F., & French, K. R. (2015). A five-factor asset pricing model. Journal of Financial Economics, 116(1), 1-22.
Wilder, J. W. (1978). New concepts in technical trading systems. Trend Research.
Canuck Trading Projection IndicatorCanuck Trading Projection Indicator
Overview
The Canuck Trading Projection Indicator is a powerful PineScript v6 tool designed for TradingView to project potential bullish and bearish price trajectories based on historical price and volume movements. It provides traders with actionable insights by estimating future price targets and assigning confidence levels to each outlook, helping to identify probable market directions across any timeframe. Ideal for both short-term and long-term traders, this indicator combines momentum analysis, RSI filtering, support/resistance detection, and time-weighted trend analysis to deliver robust projections.
Features
Bullish and Bearish Projections: Forecasts price targets for upward (bullish) and downward (bearish) movements over a user-defined projection period (default 20 bars).
Confidence Levels: Assigns percentage confidence scores to each outlook, reflecting the likelihood of the projected price based on historical trends, volatility, and volume.
RSI Filter: Incorporates a 14-period Relative Strength Index (RSI) to validate trends, requiring RSI > 50 for bullish and RSI < 50 for bearish signals.
Support/Resistance Detection: Adjusts confidence levels when projections are near key swing highs/lows (within 2% of average price), boosting confidence by 5% for alignments.
Time-Based Weighting: Prioritizes recent price movements in trend analysis, giving more weight to newer bars for improved relevance.
Customizable Inputs: Allows users to tailor lookback period, projection bars, RSI period, confidence threshold, colors, and label positioning.
Forced Label Spacing: Prevents overlap of bullish and bearish text labels, even for tight projections, using fixed vertical slots when price differences are small (<2% of average price).
Timeframe Flexibility: Works seamlessly across all TradingView timeframes (e.g., 30-minute, hourly, daily, weekly, monthly), adapting projections to the chart’s resolution.
Clean Visualization: Displays projections as green (bullish) and red (bearish) dashed lines, with non-overlapping text labels at the projection endpoints showing price targets and confidence levels.
How It Works
The indicator analyzes historical price and volume data over a user-defined lookback period (default 50 bars) to calculate:
Momentum: Combines price changes and volume to assess trend strength, using a weighted moving average (WMA) for directional bias.
Trend Analysis: Counts bullish (price up, volume above average, RSI > 50) and bearish (price down, volume above average, RSI < 50) trends, weighting recent bars more heavily.
Projections:
Bullish Slope: Positive or flat when momentum is upward, scaled by price change and momentum intensity.
Bearish Slope: Negative or flat when momentum is downward, amplified by bearish confidence for stronger projections.
Projects prices forward by 20 bars (default) using current close plus slope times projection bars.
Confidence Levels:
Base confidence derived from the proportion of bullish/bearish trends, with a 5% minimum to avoid zero confidence.
Adjusted by volatility (lower volatility increases confidence), volume trends, and proximity to support/resistance levels.
Visualization:
Draws projection lines from the current close to the 20-bar future target.
Places text labels at line endpoints, showing price targets and confidence percentages, with forced spacing for readability.
Input Parameters
Lookback Period (default: 50): Number of bars for historical analysis (minimum 10).
Projection Bars (default: 20): Number of bars to project forward (minimum 5).
Confidence Threshold (default: 0.6): Minimum confidence for strong trend indication (0.1 to 1.0).
Bullish Projection Line Color (default: Green): Color for bullish projection line and label.
Bearish Projection Line Color (default: Red): Color for bearish projection line and label.
RSI Period (default: 14): Period for RSI momentum filter (minimum 5).
Label Vertical Offset (%) (default: 1.0): Base offset for labels as a percentage of price range (0.1% to 5.0%).
Minimum Label Spacing (%) (default: 2.0): Minimum vertical spacing between labels for tight projections (0.5% to 10.0%).
Usage Instructions
Add to Chart: Copy the script into TradingView’s Pine Editor, save, and add the indicator to your chart.
Select Timeframe: Apply to any timeframe (e.g., 30-minute, hourly, daily, weekly, monthly) to match your trading strategy.
Interpret Outputs:
Green Line/Label: Bullish price target and confidence (e.g., "Bullish: 414.37, Confidence: 35%").
Red Line/Label: Bearish price target and confidence (e.g., "Bearish: 279.08, Confidence: 41.3%").
Higher confidence indicates a stronger likelihood of the projected outcome.
Adjust Inputs:
Modify Lookback Period to focus on shorter/longer historical trends (e.g., 20 for short-term, 100 for long-term).
Change Projection Bars to adjust forecast horizon (e.g., 10 for shorter, 50 for longer).
Tweak RSI Period or Confidence Threshold for sensitivity to momentum or trend strength.
Customize Colors for visual preference.
Increase Minimum Label Spacing if labels overlap in volatile markets.
Combine with Analysis: Use alongside other indicators (e.g., moving averages, Bollinger Bands) or fundamental analysis to confirm signals, as projections are probabilistic.
Example: TSLA Across Timeframes
Using live TSLA data (close ~346.46 USD, May 31, 2025), the indicator produces:
30-Minute: Bullish 341.93 (13.3%), Bearish 327.96 (86.7%) – Strong bearish sentiment due to intraday volatility.
1-Hour: Bullish 342.00 (33.9%), Bearish 327.50 (62.3%) – Bearish but less intense, reflecting hourly swings.
4-Hour: Bullish 345.52 (73.4%), Bearish 344.44 (19.0%) – Flat outlook, indicating consolidation.
Daily: Bullish 391.26 (68.8%), Bearish 302.22 (31.2%) – Bullish bias from recent uptrend, bearish tempered by longer lookback.
Weekly: Bullish 414.37 (35.0%), Bearish 279.08 (41.3%) – Wide range, reflecting annual volatility.
Monthly: Bullish 396.70 (54.9%), Bearish 296.93 (10.2%) – Long-term bullish optimism.
These results align with market dynamics: short-term intervals capture volatility, while longer intervals smooth trends, providing balanced outlooks.
Notes
Accuracy: Projections are estimates based on historical data and should be used with other analysis tools. Confidence levels indicate likelihood, not certainty.
Timeframe Sensitivity: Short-term intervals (e.g., 30-minute) show larger price swings and higher confidence due to volatility, while longer intervals (e.g., monthly) are more stable.
Customization: Adjust inputs to match your trading style (e.g., shorter lookback for day trading, longer for swing trading).
Performance: Tested on volatile stocks like TSLA, NVIDIA, and others, ensuring robust performance across markets.
Limitations: May produce conservative bearish projections in strong uptrends due to momentum weighting. Adjust lookback or projection_bars for sensitivity.
Feedback
If you encounter issues (e.g., label overlap, projection mismatches), please share your timeframe, settings, or a screenshot. Suggestions for enhancements (e.g., additional filters, visual tweaks) are welcome!
Disclaimer
The Canuck Trading Projection Indicator is provided for educational and informational purposes only. It is not financial advice. Trading involves significant risks, and past performance is not indicative of future results. Always perform your own due diligence and consult a qualified financial advisor before making trading decisions.
Laplace Momentum Percentile ║ BullVision 🔬 Overview
Laplace Momentum Percentile ║ BullVision is a custom-built trend analysis tool that applies Laplace-inspired smoothing to price action and maps the result to a historical percentile scale. This provides a contextual view of trend intensity, with optional signal refinement using a Kalman filter.
This indicator is designed for traders and analysts seeking a normalized, scale-independent perspective on market behavior. It does not attempt to predict price but instead helps interpret the relative strength or weakness of recent movements.
⚙️ Key Concepts
📉 Laplace-Based Smoothing
The core signal is built using a Laplace-style weighted average, applying an exponential decay to price values over a specified length. This emphasizes recent movements while still accounting for historical context.
🎯 Percentile Mapping
Rather than displaying the raw output, the filtered signal is converted into a percentile rank based on its position within a historical lookback window. This helps normalize interpretation across different assets and timeframes.
🧠 Optional Kalman Filter
For users seeking additional smoothing, a Kalman filter is included. This statistical method updates signal estimates dynamically, helping reduce short-term fluctuations without introducing significant lag.
🔧 User Settings
🔁 Transform Parameters
Transform Parameter (s): Controls the decay rate for Laplace weighting.
Calculation Length: Sets how many candles are used for smoothing.
📊 Percentile Settings
Lookback Period: Defines how far back to calculate the historical percentile ranking.
🧠 Kalman Filter Controls
Enable Kalman Filter: Optional toggle.
Process Noise / Measurement Noise: Adjust the filter’s responsiveness and tolerance to volatility.
🎨 Visual Settings
Show Raw Signal: Optionally display the pre-smoothed percentile value.
Thresholds: Customize upper and lower trend zone boundaries.
📈 Visual Output
Main Line: Smoothed percentile rank, color-coded based on strength.
Raw Line (Optional): The unsmoothed percentile value for comparison.
Trend Zones: Background shading highlights strong upward or downward regimes.
Live Label: Displays current percentile value and trend classification.
🧩 Trend Classification Logic
The indicator segments percentile values into five zones:
Above 80: Strong upward trend
50–80: Mild upward trend
20–50: Neutral zone
0–20: Mild downward trend
Below 0: Strong downward trend
🔍 Use Cases
This tool is intended as a visual and contextual aid for identifying trend regimes, assessing historical momentum strength, or supporting broader confluence-based analysis. It can be used in combination with other tools or frameworks at the discretion of the trader.
⚠️ Important Notes
This script does not provide buy or sell signals.
It is intended for educational and analytical purposes only.
It should be used as part of a broader decision-making process.
Past signal behavior should not be interpreted as indicative of future results.
Sideways + Buy + Sell DetectionSure! Here's the plain-language description of your script without using any code.
---
### 📘 **Script Purpose**
This script is designed to detect three different types of market conditions:
1. **Sideways (range-bound) market** — useful for non-directional strategies like strangles or straddles.
2. **Bullish trend** — provides a signal to consider buying.
3. **Bearish trend** — provides a signal to consider selling.
---
### 🔧 **Indicators Used**
* **RSI (Relative Strength Index)**: Measures market momentum. It's used to determine whether the market is in a bullish, bearish, or neutral zone.
* **ADX (Average Directional Index)** along with **DI+ and DI-**: Measures the strength and direction of a trend.
* **MACD (Moving Average Convergence Divergence)**: Confirms momentum and trend direction based on moving averages.
---
### 🟪 **Sideways Market Signal**
A sideways (non-trending) signal is shown when:
* RSI indicates the market is neither overbought nor oversold (in the middle range).
* ADX shows weak trend strength.
* The ADX value is lower than both DI+ and DI-, suggesting indecision or lack of clear trend.
A purple label appears below the bar when this condition is met.
---
### 🟩 **Buy Signal**
A buy signal is generated when:
* RSI shows strong upward momentum.
* ADX confirms there is a strong trend.
* MACD confirms bullish conditions with both the MACD and signal lines above zero and in the correct crossover direction.
A green label appears below the bar when these bullish conditions align.
---
### 🟥 **Sell Signal**
A sell signal appears when:
* RSI shows strong downward momentum.
* ADX confirms a strong trend.
* MACD confirms bearish conditions, with both MACD and signal lines below zero and in the correct crossover direction.
A red label appears — currently also plotted below the bar (which you may want to move above the bar for better clarity).
---
### ✅ **Use Case**
This script is suitable for:
* Deciding when to deploy **strangle/straddle** strategies in sideways markets.
* Identifying strong **bullish or bearish trends** for directional trades.
* Filtering out weak or indecisive conditions.
Adaptive Volume-Weighted RSI (AVW-RSI)Concept Summary
The AVW-RSI is a modified version of the Relative Strength Index (RSI), where each price change is weighted by the relative trading volume for that period. This means periods of high volume (typically driven by institutions or “big money”) have a greater influence on the RSI calculation than periods of low volume.
Why AVW-RSI Helps Traders
Avoids Weak Signals During Low Volume
Standard RSI may show overbought/oversold zones even during low-volume periods (e.g., during lunch hours or after news).
AVW-RSI gives less weight to these periods, avoiding misleading signals.
Amplifies Strong Momentum Moves
If RSI is rising during high volume, it's more likely driven by institutional buying—AVW-RSI reflects that stronger by weighting the RSI component.
Filters Out Retail Noise
By prioritizing high-volume candles, it naturally discounts fakeouts caused by thin markets or retail-heavy moves.
Highlights Institutional Entry/Exit
Useful for spotting hidden accumulation/distribution that classic RSI would miss.
How It Works (Calculation Logic)
Traditional RSI Formula Recap
RSI = 100 - (100 / (1 + RS))
RS = Average Gain / Average Loss (over N periods)
Modified Step – Apply Volume Weight
For each period
Gain_t = max(Close_t - Close_{t-1}, 0)
Loss_t = max(Close_{t-1} - Close_t, 0)
Weight_t = Volume_t / AvgVolume(N)
WeightedGain_t = Gain_t * Weight_t
WeightedLoss_t = Loss_t * Weight_t
Weighted RSI
AvgWeightedGain = SMA(WeightedGain, N)
AvgWeightedLoss = SMA(WeightedLoss, N)
RS = AvgWeightedGain / AvgWeightedLoss
AVW-RSI = 100 - (100 / (1 + RS))
Visual Features on Chart
Line Color Gradient
Color gets darker as volume weight increases, signaling stronger conviction.
Overbought/Oversold Zones
Traditional: 70/30
Suggested AVW-RSI zones: Use dynamic thresholds based on historical volatility (e.g., 80/20 for high-volume coins).
Volume Spike Flags
Mark RSI turning points that occurred during volume spikes with a special dot/symbol.
Trading Strategies with AVW-RSI
1. Weighted RSI Divergence
Regular RSI divergence becomes more powerful when volume is high.
AVW-RSI divergence with volume spike is a strong signal of reversal.
2. Trend Confirmation
RSI crossing above 50 during rising volume is a good entry signal.
RSI crossing below 50 with high volume is a strong exit or short trigger.
3. Breakout Validation
Price breaking resistance + AVW-RSI > 60 with volume = Confirmed breakout.
Price breaking but AVW-RSI < 50 or on low volume = Potential fakeout.
Example Use Case
Stock XYZ is approaching a resistance zone. A trader sees:
Standard RSI: 65 → suggests strength.
Volume is 3x the average.
AVW-RSI: 78 → signals strong momentum with institutional backing.
The trader enters confidently, knowing this isn't just low-volume hype.
Limitations / Tips
Works best on liquid assets (Forex majors, large-cap stocks, BTC/ETH).
Should be used alongside price action and volume analysis—not standalone.
Periods of extremely high volume (news events) might need smoothing to avoid spikes.
Machine Learning | Adaptive Trend Signals [Bitwardex]⚙️🧠Machine Learning | Adaptive Trend Signals
🔷Overview
Machine Learning | Adaptive Trend Signals is a Pine Script™ v6 indicator designed to visualize market trends and generate signals through a combination of volatility clustering, Gaussian smoothing, and adaptive trend calculations. Built as an overlay indicator, it integrates advanced techniques inspired by machine learning concepts, such as K-Means clustering, to adapt to changing market conditions. The script is highly customizable, includes a backtesting module, and supports alert conditions, making it suitable for traders exploring trend-based strategies and developers studying volatility-driven indicator design.
🔷Functionality
The indicator performs the following core functions:
• Volatility Clustering: Uses K-Means clustering to categorize market volatility into high, medium, and low states, adjusting trend sensitivity accordingly.
• Trend Calculation: Computes adaptive trend lines (SmartTrend) based on volatility-adjusted standard deviation, smoothed RSI, and ADX filters.
• Signal Generation: Identifies potential buy and sell points through trend line crossovers and directional confirmation.
• Backtesting Module: Tracks trade outcomes based on the SmartTrend3 value, displaying win rate and total trades.
• Visualization: Plots trend lines with gradient colors and optional signal markers (bullish 🐮 and bearish 🐻).
• Alerts: Provides configurable alerts for trend shifts and volatility state changes.
🔷Technical Methodology
Volatility Clustering with K-Means
The indicator employs a K-Means clustering algorithm to classify market volatility, measured via the Average True Range (ATR), into three distinct clusters:
• Data Collection: Gathers ATR values over a user-defined training period (default: 100 bars).
• Centroid Initialization: Sets initial centroids at the highest, lowest, and midpoint ATR values within the training period.
• Iterative Clustering: Assigns ATR data points to the nearest centroid, recalculates centroid means, and repeats until convergence.
• Dynamic Adjustment: Assigns a volatility state (high, medium, or low) based on the closest centroid, adjusting the trend factor (e.g., tighter for high volatility, wider for low volatility).
This approach allows the indicator to adapt its sensitivity to varying market conditions, providing a data-driven foundation for trend calculations.
🔷Gaussian Smoothing
To enhance signal clarity and reduce noise, the indicator applies Gaussian kernel smoothing to:
• RSI: Smooths the Relative Strength Index (calculated from OHLC4) to filter short-term fluctuations.
• SmartTrend: Smooths the primary trend line for a more stable output.
The Gaussian kernel uses a sigma value derived from the user-defined smoothing length, ensuring mathematically consistent noise reduction.
🔷SmartTrend Calculation
The pineSmartTrend function is the core of the indicator, producing three trend lines:
• SmartTrend: The primary trend line, calculated using a volatility-adjusted standard deviation, smoothed RSI, and ADX conditions.
• SmartTrend2: A secondary trend line with a wider factor (base factor * 1.382) for signal confirmation.
SmartTrend3: The average of SmartTrend and SmartTrend2, used for plotting and backtesting.
Key components of the calculation include:
• Dynamic Standard Deviation: Scales based on ATR relative to its 50-period smoothed average, with multipliers (1.0 to 1.4) applied according to volatility thresholds.
• RSI and ADX Filters: Requires RSI > 50 for bullish trends or < 50 for bearish trends, alongside ADX > 15 and rising to confirm trend strength.
Volatility-Adjusted Bands: Constructs upper and lower bands around price action, adjusted by the volatility cluster’s dynamic factor.
🔷Signal Generation
The generate_signals function generates signals as follows:
• Buy Signal: Triggered when SmartTrend crosses above SmartTrend2 and the price is above SmartTrend, with directional confirmation.
• Sell Signal: Triggered when SmartTrend crosses below SmartTrend2 and the price is below SmartTrend, with directional confirmation.
Directional Logic: Tracks trend direction to filter out conflicting signals, ensuring alignment with the broader market context.
Signals are visualized as small circles with bullish (🐮) or bearish (🐻) emojis, with an option to toggle visibility.
🔷Backtesting
The get_backtest function evaluates signal outcomes using the SmartTrend3 value (rather than closing prices) to align with the trend-based methodology.
It tracks:
• Total Trades: Counts completed long and short trades.
• Win Rate: Calculates the percentage of trades where SmartTrend3 moves favorably (higher for longs, lower for shorts).
Position Management: Closes opposite positions before opening new ones, simulating a single-position trading system.
Results are displayed in a table at the top-right of the chart, showing win rate and total trades. Note that backtest results reflect the indicator’s internal logic and should not be interpreted as predictive of real-world performance.
🔷Visualization and Alerts
• Trend Lines: SmartTrend3 is plotted with gradient colors reflecting trend direction and volatility cluster, accompanied by a secondary line for visual clarity.
• Signal Markers: Optional buy/sell signals are plotted as small circles with customizable colors.
• Alerts: Supports alerts for:
• Bullish and bearish trend shifts (confirmed on bar close).
Transitions to high, medium, or low volatility states.
🔷Input Parameters
• ATR Length (default: 14): Period for ATR calculation, used in volatility clustering.
• Period (default: 21): Common period for RSI, ADX, and standard deviation calculations.
• Base SmartTrend Factor (default: 2.0): Base multiplier for volatility-adjusted bands.
• SmartTrend Smoothing Length (default: 10): Length for Gaussian smoothing of the trend line.
• Show Buy/Sell Signals? (default: true): Enables/disables signal markers.
• Bullish/Bearish Color: Customizable colors for trend lines and signals.
🔷Usage Instructions
• Apply to Chart: Add the indicator to any TradingView chart.
• Configure Inputs: Adjust parameters to align with your trading style or market conditions (e.g., shorter ATR length for faster markets).
• Interpret Output:
• Trend Lines: Use SmartTrend3’s direction and color to gauge market bias.
• Signals: Monitor bullish (🐮) and bearish (🐻) markers for potential entry/exit points.
• Backtest Table: Review win rate and total trades to understand the indicator’s behavior in historical data.
• Set Alerts: Configure alerts for trend shifts or volatility changes to support manual or automated trading workflows.
• Combine with Analysis: Use the indicator alongside other tools or market context, as it is designed to complement, not replace, comprehensive analysis.
🔷Technical Notes
• Data Requirements: Requires at least 100 bars for accurate volatility clustering. Ensure sufficient historical data is loaded.
• Market Suitability: The indicator is designed for trend detection and may perform differently in ranging or volatile markets due to its reliance on RSI and ADX filters.
• Backtesting Scope: The backtest module uses SmartTrend3 values, which may differ from price-based outcomes. Results are for informational purposes only.
• Computational Intensity: The K-Means clustering and Gaussian smoothing may increase processing time on lower timeframes or with large datasets.
🔷For Developers
The script is modular, well-commented, encouraging reuse and modification with proper attribution.
Key functions include:
• gaussianSmooth: Applies Gaussian kernel smoothing to any data series.
• pineSmartTrend: Computes adaptive trend lines with volatility and momentum filters.
• getDynamicFactor: Adjusts trend sensitivity based on volatility clusters.
• get_backtest: Evaluates signal performance using SmartTrend3.
Developers can extend these functions for custom indicators or strategies, leveraging the volatility clustering and smoothing methodologies. The K-Means implementation is particularly useful for adaptive volatility analysis.
🔷Limitations
• The indicator is not predictive and should be used as part of a broader trading strategy.
• Performance varies by market, timeframe, and parameter settings, requiring user experimentation.
• Backtest results are based on historical data and internal logic, not real-world trading conditions.
• Volatility clustering assumes sufficient historical data; incomplete data may affect accuracy.
🔷Acknowledgments
Developed by Bitwardex, inspired by machine learning concepts and adaptive trading methodologies. Community feedback is welcome via TradingView’s platform.
🔷 Risk Disclaimer
Trading involves significant risks, and most traders may incur losses. Bitwardex AI Algo is provided for informational and educational purposes only and does not constitute financial advice or a recommendation to buy or sell any financial instrument . The signals, metrics, and features are tools for analysis and do not guarantee profits or specific outcomes. Past performance is not indicative of future results. Always conduct your own due diligence and consult a financial advisor before making trading decisions.
CyberCandle SwiftEdgeCyberCandle SwiftEdge
Overview
CyberCandle SwiftEdge is a cutting-edge, AI-inspired trading indicator designed for traders seeking precision and clarity in trend-following and swing trading. Powered by SwiftEdge, it combines Heikin Ashi candles, a gradient-colored Exponential Moving Average (EMA), and a Relative Strength Index (RSI) to deliver clear buy and sell signals. Featuring glowing visuals, dynamic signal icons, and a customizable RSI dashboard in the top-right corner, this script offers a futuristic interface for identifying high-probability trade setups on various timeframes (e.g., 1H, 4H).
What It Does
CyberCandle SwiftEdge integrates three powerful components to generate actionable trading signals:
Heikin Ashi Candles: Smooths price action to highlight trends, reducing market noise and making reversals easier to spot.
Gradient EMA: A 100-period EMA with dynamic color transitions (blue/cyan for uptrends, red/pink for downtrends) to confirm market direction.
RSI Dashboard: A neon-lit display showing RSI levels, indicating overbought (>70), oversold (<30), or neutral (30-70) conditions.
Buy and sell signals are marked with prominent, glowing icons (triangles and arrows) based on trend direction, momentum, and specific Heikin Ashi patterns. The script’s customizable parameters allow traders to tailor the strategy to their preferences, balancing signal frequency and precision.
How It Works
The strategy leverages the synergy of Heikin Ashi, EMA, and RSI to filter trades and highlight opportunities:
Trend Direction: The price must be above the EMA for buy signals (bullish trend) or below for sell signals (bearish trend). The EMA’s gradient color shifts based on its slope, visually reinforcing trend strength.
Momentum Confirmation: RSI must exceed a user-defined threshold (default: 50) for buy signals or fall below it for sell signals, ensuring momentum supports the trade.
Candle Patterns: Buy signals require a green Heikin Ashi candle (close > open), with the two prior candles having minimal upper wicks (≤5% of candle body) and being red (indicating a retracement). Sell signals require a red candle, minimal lower wicks, and two prior green candles.
RSI Dashboard: Positioned in the top-right corner, it features a glowing circle (red for overbought, green for oversold, blue for neutral), the current RSI value, and a status indicator (triangle for extremes, square for neutral). This provides instant momentum insights without cluttering the chart.
By combining Heikin Ashi’s trend clarity, EMA’s directional filter, and RSI’s momentum validation, CyberCandle SwiftEdge minimizes false signals and highlights trades with strong potential. Its vibrant, AI-like visuals make it easy to interpret at a glance.
How to Use It
Add to Chart: In TradingView, search for "CyberCandle SwiftEdge" and add it to your chart. Set the chart to Heikin Ashi candles for optimal compatibility.
Interpret Signals:
Buy Signal: Large green triangles and arrows appear below candles when the price is above the EMA, RSI is above the buy threshold (default: 50), and conditions for a bullish retracement are met. Consider entering a long position with a 1:2 risk/reward ratio.
Sell Signal: Large red triangles and arrows appear above candles when the price is below the EMA, RSI is below the sell threshold (default: 50), and conditions for a bearish retracement are met. Consider entering a short position.
RSI Dashboard: Monitor the top-right dashboard. A red circle (RSI > 70) suggests caution for buys, a green circle (RSI < 30) indicates potential buying opportunities, and a blue circle (RSI 30-70) signals neutrality.
Customize Parameters: Open the indicator’s settings to adjust:
EMA Length (default: 100): Increase (e.g., 200) for longer-term trends or decrease (e.g., 50) for shorter-term sensitivity.
RSI Length (default: 14): Adjust for more (e.g., 7) or less (e.g., 21) responsive momentum signals.
RSI Buy/Sell Thresholds (default: 50): Set higher (e.g., 55) for buys or lower (e.g., 45) for sells to require stronger momentum.
Wick Tolerance (default: 0.05): Increase (e.g., 0.1) to allow larger wicks, generating more signals, or decrease (e.g., 0.02) for stricter conditions.
Require Retracement (default: true): Disable to remove the two-candle retracement requirement, increasing signal frequency.
Trading: Use signals in conjunction with the RSI dashboard and market context. For example, avoid buy signals if the RSI dashboard is red (overbought). Always apply proper risk management, such as setting stop-losses based on recent lows/highs.
What Makes It Original
CyberCandle SwiftEdge stands out due to its futuristic, AI-inspired visual design and user-friendly customization:
Neon Aesthetics: Glowing Heikin Ashi candles, gradient EMA, and dynamic signal icons (triangles and arrows) with RSI-driven transparency create a high-tech, immersive experience.
RSI Dashboard: A compact, top-right display with a neon circle, RSI value, and adaptive status indicator (triangle/square) provides instant momentum insights without cluttering the chart.
Customizability: Users can fine-tune EMA length, RSI parameters, wick tolerance, and retracement requirements via TradingView’s settings, balancing signal frequency and precision.
Integrated Approach: The synergy of Heikin Ashi’s trend clarity, EMA’s directional strength, and RSI’s momentum validation offers a cohesive strategy that reduces false signals.
Why This Combination?
The script combines Heikin Ashi, EMA, and RSI for a complementary effect:
Heikin Ashi smooths price fluctuations, making it ideal for identifying sustained trends and retracements, which are critical for the strategy’s signal logic.
EMA provides a reliable trend filter, ensuring signals align with the broader market direction. Its gradient color enhances visual trend recognition.
RSI adds momentum context, confirming that signals occur during favorable conditions (e.g., RSI > 50 for buys). The dashboard makes RSI intuitive, even for non-technical users.
Together, these components create a balanced system that captures trend reversals after retracements, validated by momentum, with a visually engaging interface that simplifies decision-making.
Tips
Best used on volatile assets (e.g., BTC/USD, EUR/USD) and higher timeframes (1H, 4H) for clearer trends.
Experiment with parameters in the settings to match your trading style (e.g., increase wick tolerance for more signals).
Combine with other analysis (e.g., support/resistance) for higher-confidence trades.
Note
This indicator is for informational purposes and does not guarantee profits. Always backtest and use proper risk management before trading.
Supertrend Hombrok BotSupertrend Hombrok Bot – Automated Trading Strategy for Dynamic Market Conditions
This trading strategy script has been developed to operate automatically based on detailed market conditions. It combines the popular Supertrend indicator, RSI (Relative Strength Index), Volume, and ATR (Average True Range) to determine the best entry and exit points while maintaining proper risk management.
Key Features:
Supertrend as the Base: Uses the Supertrend indicator to identify the market's trend direction, generating buy signals when the market is in an uptrend and sell signals when in a downtrend.
RSI Filter: The RSI is used to determine overbought and oversold conditions, helping to avoid entries in extreme market conditions. Entries are avoided when RSI > 70 (overbought) and RSI < 30 (oversold), reducing the risk of false movements.
Volume Filter: The strategy checks if the trading volume is above the average multiplied by a user-defined factor. This ensures that only significant movements, with higher liquidity, are considered.
Candle Body Size: The strategy filters only candles with a body large enough relative to the ATR (Average True Range), ensuring that the price movements on the chart have sufficient strength.
Risk Management: The bot is configured to operate with an adjustable Risk/Reward Ratio (R:R). This means that for each trade, both Take Profit (TP) and Stop Loss (SL) are adjusted based on the market's volatility as measured by the ATR.
Automatic Entries and Exits: The script automatically executes entries based on the specified conditions and exits with predefined Stop Loss and Take Profit levels, ensuring risk is controlled for each trade.
How It Works:
Buy Condition: Triggered when the market is in an uptrend (Supertrend), the volume is above the adjusted average, the candle body is strong enough, and the RSI is below the overbought level.
Sell Condition: Triggered when the market is in a downtrend (Supertrend), the volume is above the adjusted average, the candle body is strong enough, and the RSI is above the oversold level.
Alerts:
Buy and Sell Alerts are configured with detailed information, including Stop Loss and Take Profit values, allowing the user to receive notifications when trading conditions are met.
Capital Management:
The capital per trade can be adjusted based on account size and risk profile.
Important Note:
Always test before trading with real capital: While the strategy has been designed based on solid technical analysis methods, always perform tests in real-time market conditions with demo accounts before applying the bot in live trading.
Disclaimer: This script is a tool to assist in the trading process and does not guarantee profit. Past performance is not indicative of future results, and the trader is always responsible for their investment decisions.
RSI + ADX + ATR Combo Indicator: RSI + ADX + ATR Combo Filter
This indicator is a confluence filter tool that combines RSI, ADX, and ATR into a single, easy-to-read chart overlay. It is designed to help traders identify low-volatility, non-trending zones with balanced momentum—ideal for strategies that rely on breakouts or reversals.
🔍 Core Components:
RSI (Relative Strength Index)
Standard RSI with custom upper and lower bounds (default: 60 and 40).
Filters out extreme overbought/oversold regions and focuses on price consolidation zones.
ADX (Average Directional Index)
Measures trend strength.
When ADX is below a custom threshold (default: 20), it indicates a weak or range-bound trend.
ATR (Average True Range)
Represents volatility.
Low ATR values (default threshold: 2.5) are used to filter out high-volatility environments, helping refine entries.
🟣 Signal Logic:
A signal is highlighted with a background color when all three conditions are met:
RSI is between lower and upper bounds (e.g., 40 < RSI < 60) ✅
ADX is below the trend threshold (e.g., ADX < 20) ✅
ATR is below the volatility threshold (e.g., ATR < 2.5) ✅
These combined conditions suggest a low-volatility, low-trend strength, and balanced momentum zone—perfect for anticipating breakouts or strong directional moves.
Normalized FX Weighted Daily % Change vs DXYThis indicator tracks international liquidity flows by measuring the USD’s relative strength against major currencies—EUR, CNY, JPY, GBP, and CAD. It calculates the weighted percentage change of each pair over a specified interval. A positive reading means the USD is weakening (liquidity flowing out of the US), while a negative reading indicates the USD is strengthening (liquidity flowing in). Additionally, the indicator incorporates the DXY index and VIX, with all components normalized using Z-scores for clear, comparable insights into market dynamics.
RSI Candles with EMA byAuncleJoeThe Relative Strength Index (RSI) is one of the most widely used momentum indicators in trading. It helps traders assess whether an asset is overbought or oversold by measuring the speed and magnitude of recent price changes. Traditionally, RSI is displayed as a single line oscillating between 0 and 100, but this representation can sometimes make it difficult to spot trends, reversals, and momentum shifts effectively.
To enhance RSI visualization and usability, the RSI Candles with EMA indicator transforms the RSI values into candlestick charts, providing a more intuitive and dynamic way to analyze momentum. Unlike the traditional RSI line, this approach allows traders to observe RSI trends just as they would analyze price charts, making it easier to detect changes in momentum and trend strength.
Each RSI candle represents a specific period’s momentum activity. Green candles indicate that the RSI closed higher than it opened, signaling bullish momentum, while red candles suggest that the RSI closed lower than it opened, indicating bearish sentiment. This candlestick-style visualization helps traders spot RSI trends, breakouts, and reversals more effectively than a simple line chart.
To further refine momentum analysis, this indicator also includes an Exponential Moving Average (EMA) of RSI. The EMA smooths RSI fluctuations and provides a clearer trend direction. When RSI candles remain above the EMA, it suggests strong buying momentum, whereas RSI candles falling below the EMA indicate increasing selling pressure. This combination of RSI candlesticks and an EMA line allows traders to better identify shifts in market sentiment and potential trend reversals.
Additionally, the indicator includes customizable overbought and oversold levels (defaulted at 70 and 30, respectively). These levels help traders recognize when an asset might be overextended in either direction, potentially signaling an upcoming reversal. When RSI candles approach or cross these thresholds, traders can anticipate possible changes in market direction.
This indicator is particularly useful for a wide range of traders. Scalpers and day traders can leverage it to quickly identify short-term momentum shifts, while swing traders can use it to detect potential reversals in multi-day trends. Trend-following traders can confirm bullish or bearish trends based on RSI’s position relative to its EMA, and mean reversion traders can use it to spot extreme conditions where price action might snap back.
By combining RSI candlesticks with an EMA filter, this indicator provides a more dynamic and visually intuitive approach to momentum trading. It offers clearer trend signals, better reversal detection, and enhanced decision-making, making it an essential tool for traders who rely on RSI-based strategies.
Volume Order Blocks [BigBeluga]Volume Order Blocks is a powerful indicator that identifies significant order blocks based on price structure, helping traders spot key supply and demand zones. The tool leverages EMA crossovers to determine the formation of bullish and bearish order blocks while visualizing their associated volume and relative strength.
🔵 Key Features:
Order Block Detection via EMA Crossovers:
Plots bullish order blocks at recent lows when the short EMA crosses above the long EMA.
Plots bearish order blocks at recent highs when the short EMA crosses below the long EMA.
Uses customizable sensitivity through the “Sensitivity Detection” setting to fine-tune block formation.
Volume Collection and Visualization:
Calculates the total volume between the EMA crossover bar and the corresponding high (bearish OB) or low (bullish OB).
Displays the absolute volume amount next to each order block for clear volume insights.
Percentage Volume Distribution:
Shows the percentage distribution of volume among bullish or bearish order blocks.
100% represents the cumulative volume of all OBs in the same category (bullish or bearish).
Order Block Removal Conditions:
Bullish order blocks are removed when the price closes below the bottom of the block.
Bearish order blocks are removed when the price closes above the top of the block.
Helps maintain chart clarity by only displaying relevant and active levels.
Midline Feature:
Dashed midline inside each order block indicates the midpoint between the upper and lower boundaries.
Traders can toggle the midline on or off through the settings.
Shadow Trend:
Shadow Trend dynamically visualizes trend strength and direction by adapting its color intensity based on price movement.
🔵 Usage:
Supply & Demand Zones: Use bullish and bearish order blocks to identify key market reversal or continuation points.
Volume Strength Analysis: Compare volume percentages to gauge which order blocks hold stronger market significance.
Breakout Confirmation: Monitor block removal conditions for potential breakout signals beyond support or resistance zones.
Trend Reversals: Combine EMA crossovers with order block formation for early trend reversal detection.
Risk Management: Use OB boundaries as potential stop-loss or entry points.
Volume Order Blocks is an essential tool for traders seeking to incorporate volume-based supply and demand analysis into their trading strategy. By combining price action, volume data, and EMA crossovers, it offers a comprehensive view of market structure and potential turning points.
Candlestick Pattern Detector - Vijay PrasadOverview:
This Pine Script v6 indicator is designed to detect and label key candlestick patterns on TradingView charts. It provides real-time visual markers for major bullish and bearish reversal signals, aiding traders in decision-making.
Usefulness:
✅ Saves time by automating candlestick pattern detection.
✅ Reduces manual chart analysis errors.
✅ Works across all markets & timeframes.
✅ Enhances trading strategies with accurate signals.
Candlestick Patterns Recognises:
Bullish Engulfing – A strong bullish reversal pattern.
Bearish Engulfing – Indicates a potential downtrend.
Hammer – Suggests a market bottom or reversal.
Shooting Star – A bearish reversal signal at the top of an uptrend.
Doji – Signals market indecision and possible trend change.
Key Functions:
Automated Pattern Visible
Identifies candlestick patterns dynamically and plots them on the chart.
Visual Labels for Patterns
Labels to indicate specific candlestick formations.
Labels appear only when a valid pattern is detected, avoiding unnecessary clutter.
Buy/Sell Signal
Plots buy signals at bullish patterns and sell signals at bearish patterns.
Helps traders recognize trend reversals and entry/exit points.
Bullish Engulfing Pattern (Green Label)
What it means: A bullish engulfing pattern typically signals a potential reversal from a downtrend to an uptrend. The current candle fully engulfs the previous candle, signaling strong buying interest.
Identifying Candlestick Patterns on the Chart
How to use it:
Entry: Look for a green label (bullish engulfing) at the bottom of the chart. When it appears, consider entering a long position (buy).
Confirmation: To increase reliability, wait for confirmation by observing if price moves above the high of the bullish engulfing candle.
Exit: Exit when the trend shows signs of reversing or take profit at predefined levels (e.g., resistance or a risk-to-reward ratio).
Bearish Engulfing Pattern (Red Label)
What it means: A bearish engulfing pattern is a signal of a potential reversal from an uptrend to a downtrend. The current candle fully engulfs the previous candle, signaling strong selling pressure.
How to use it:
Entry: Look for a red label (bearish engulfing) at the top of the chart. When it appears, consider entering a short position (sell).
Confirmation: Wait for the price to move below the low of the bearish engulfing candle to confirm the bearish trend.
Exit: Close the trade when the price reaches support levels or the trend shows signs of reversing.
Doji Pattern (Blue Circle)
What it means: A Doji candle signals market indecision. It represents a balance between buyers and sellers, often marking a potential reversal or consolidation point.
How to use it:
Entry: If the Doji appears after a strong trend (bullish or bearish), wait for the next candle to break above or below the Doji's high or low. This can signal a continuation or reversal.
Confirmation: You can look for additional indicators like moving averages, RSI, or MACD for confirmation before taking any action.
Exit: Exit when the price shows clear momentum in your entry direction.
Hammer Pattern (Orange Triangle)
What it means: The hammer pattern is a bullish reversal pattern that appears after a downtrend. It suggests that sellers pushed the price down during the session, but buyers managed to push the price back up.
How to use it:
Entry: When a hammer appears, consider entering a long position (buy). The price should move above the hammer's high for confirmation.
Confirmation: Look for strong volume and a follow-up bullish candle to confirm the reversal.
Exit: Set a target based on the next resistance level, or use a trailing stop to lock in profits.
Using Candlestick Patterns with Other Indicators
To increase your chances of success, combine candlestick patterns with other technical indicators.
Here are some ideas:
RSI (Relative Strength Index): Use RSI to check whether the market is overbought or oversold. A bullish engulfing in an oversold market could indicate a stronger buy signal, and a bearish engulfing in an overbought market could indicate a stronger sell signal.
Moving Averages (e.g., 50 EMA, 200 EMA): Confirm trend direction. If the candlestick pattern aligns with the direction of the moving averages, it can give a stronger signal.
MACD (Moving Average Convergence Divergence): Use MACD to confirm momentum and potential trend changes. If a candlestick pattern aligns with a MACD crossover, it strengthens the signal.
Volume: Look for higher-than-average volume when a pattern appears. This can give you additional confirmation that the market is reacting strongly.
Practice and Refine
It's important to practice using the candlestick patterns in a demo account or backtest them to see how they perform under different market conditions. Over time, you can adjust the settings and patterns to fit your trading style and preferences.
Crypto Scanner v4This guide explains a version 6 Pine Script that scans a user-provided list of cryptocurrency tokens to identify high probability tradable opportunities using several technical indicators. The script combines trend, momentum, and volume-based analyses to generate potential buying or selling signals, and it displays the results in a neatly formatted table with alerts for trading setups. Below is a detailed walkthrough of the script’s design, how traders can interpret its outputs, and recommendations for optimizing indicator inputs across different timeframes.
## Overview and Key Components
The script is designed to help traders assess multiple tokens by calculating several indicators for each one. The key components include:
- **Input Settings:**
- A comma-separated list of symbols to scan.
- Adjustable parameters for technical indicators such as ADX, RSI, MFI, and a custom Wave Trend indicator.
- Options to enable alerts and set update frequencies.
- **Indicator Calculations:**
- **ADX (Average Directional Index):** Measures trend strength. A value above the provided threshold indicates a strong trend, which is essential for validating momentum before entering a trade.
- **RSI (Relative Strength Index):** Helps determine overbought or oversold conditions. When the RSI is below the oversold level, it may present a buying opportunity, while an overbought condition (not explicitly part of this setup) could suggest selling.
- **MFI (Money Flow Index):** Similar in concept to RSI but incorporates volume, thus assessing buying and selling pressure. Values below the designated oversold threshold indicate potential undervaluation.
- **Wave Trend:** A custom indicator that calculates two components (WT1 and WT2); a crossover where WT1 moves from below to above WT2 (particularly near oversold levels) may signal a reversal and a potential entry point.
- **Scanning and Trading Zone:**
- The script identifies a *bullish setup* when the following conditions are met for a token:
- ADX exceeds the threshold (strong trend).
- Both RSI and MFI are below their oversold levels (indicating potential buying opportunities).
- A Wave Trend crossover confirms near-term reversal dynamics.
- A *trading zone* condition is also defined by specific ranges for ADX, RSI, MFI, and a limited difference between WT1 and WT2. This zone suggests that the token might be in a consolidation phase where even small moves may be significant.
- **Alerts and Table Reporting:**
- A table is generated, with each row corresponding to a token. The table contains columns for the symbol, ADX, RSI, MFI, WT1, WT2, and the trading zone status.
- Visual cues—such as different background colors—highlight tokens with a bullish setup or that are within the trading zone.
- Alerts are issued based on the detection of a bullish setup or entry into a trading zone. These alerts are limited per bar to avoid flooding the trader with notifications.
## How to Interpret the Indicator Outputs
Traders should use the indicator values as guidance, verifying them against their own analysis before making any trading decision. Here’s how to assess each output:
- **ADX:**
- **High values (above threshold):** Indicate strong trends. If other indicators confirm an oversold condition, a trader may consider a long position for a corrective reversal.
- **Low values:** Suggest that the market is not trending strongly, and caution should be taken when considering entry.
- **RSI and MFI:**
- **Below oversold levels:** These conditions are traditionally seen as signals that an asset is undervalued, potentially triggering a bounce.
- **Above typical resistance levels (not explicitly used here):** Would normally caution a trader against entering a long position.
- **Wave Trend (WT1 and WT2):**
- A crossover where WT1 moves upward above WT2 in an oversold environment can signal the beginning of a recovery or reversal, thereby reinforcing buy signals.
- **Trading Zone:**
- Being “in zone” means that the asset’s current values for ADX, RSI, MFI, and the closeness of the Wave Trend lines indicate a period of consolidation. This scenario might be suitable for both short-term scalping or as an early exit indicator, depending on further market analysis.
## Timeframe Optimization Input Table
Traders can optimize indicator inputs depending on the timeframe they use. The following table provides a set of recommended input values for various timeframes. These values are suggestions and should be adjusted based on market conditions and individual trading styles.
Timeframe ADX RSI MFI ADX RSI MFI WT Channel WT Average
5-min 10 10 10 20 30 20 7 15
15-min 12 12 12 22 30 20 9 18
1-hour 14 14 14 25 30 20 10 21
4-hour 16 16 16 27 30 20 12 24
1-day 18 18 18 30 30 20 14 28
Adjust these parameters directly in the script’s input settings to match the selected timeframe. For shorter timeframes (e.g., 5-min or 15-min), the shorter lengths help filter high-frequency noise. For longer timeframes (e.g., 1-day), longer input values may reduce false signals and capture more significant trends.
## Best Practices and Usage Tips
- **Token Limit:**
- Limit the number of tokens scanned to 10 per query line. If you need to scan more tokens, initiate a new query line. This helps manage screen real estate and ensures the table remains legible.
- **Confirming Signals:**
- Use this script as a starting point for identifying high potential trades. Each indicator’s output should be used to confirm your trading decision. Always cross-reference with additional technical analysis tools or market context.
- **Regular Review:**
- Since the script updates the table every few bars (as defined by the update frequency), review the table and alerts regularly. Market conditions change rapidly, so timely decisions are crucial.
## Conclusion
This Pine Script provides a comprehensive approach for scanning multiple cryptocurrencies using a combination of trend strength (ADX), momentum (RSI and MFI), and reversal signals (Wave Trend). By using the provided recommendation table for different timeframes and limiting the tokens to 20 per query line (with a maximum of four query lines), traders can streamline their scanning process and more effectively identify high probability tradable tokens. Ultimately, the outputs should be critically evaluated and combined with additional market research before executing any trades.
Relative Performance SuiteOverview
The Relative Performance Suite (RPS) is a versatile and comprehensive indicator designed to evaluate an asset's performance relative to a benchmark. By offering multiple methods to measure performance, including Relative Performance, Alpha, and Price Ratio, this tool helps traders and investors assess asset strength, resilience, and overall behavior in different market conditions.
Key Features:
✅ Multiple Performance Measures:
Choose from various relative performance calculations, including:
Relative Performance:
Measures how much an asset has outperformed or underperformed its benchmark over a given period.
Relative Performance (Proportional):
A proportional version of relative performance,
factoring in scaling effects.
Relative Performance (MA Based):
Uses moving averages to smooth performance fluctuations.
Alpha:
A measure of an asset’s performance relative to what would be expected based on its beta and the benchmark’s return. It represents the excess return above the risk-free rate after adjusting for market risk.
Price Ratio:
Compares asset prices directly to determine relative value over time.
✅ Customizable Moving Averages:
Apply different moving average types (SMA, EMA, SMMA, WMA, VWMA) to smooth price inputs and refine calculations.
✅ Beta Calculation:
Includes a Beta measure used in Alpha calculation, which users can toggle the visibility of helping users understand an asset's sensitivity to market movements.
✅ Risk-Free Rate Adjustment:
Incorporate risk-free rates (e.g., US Treasury yields, Fed Funds Rate) for a more accurate calculation of Alpha.
✅ Logarithmic Returns Option:
Users can switch between standard returns and log returns for more refined performance analysis.
✅ Dynamic Color Coding:
Identify outperformance or underperformance with intuitive color coding.
Option to color bars based on relative strength, making chart analysis easier.
✅ Customizable Tables for Data Display:
Overview table summarizing key metrics.
Explanation table offering insights into how values are derived.
How to Use:
Select a Benchmark: Choose a comparison symbol (e.g., TOTAL or SPX ).
Pick a Performance Metric: Use different modes to analyze relative performance.
Customize Calculation Methods: Adjust moving averages, timeframes, and log returns based on preference.
Interpret the Colors & Tables: Utilize the dynamic coloring and tables to quickly assess market conditions.
Ideal For:
Traders looking to compare individual asset performance against an index or benchmark.
Investors analyzing Alpha & Beta to understand risk-adjusted returns.
Market analysts who want a visually intuitive and data-rich performance tracking tool.
This indicator provides a powerful and flexible way to track relative asset strength, helping users make more informed trading decisions.
Combined SmartComment & Dynamic S/R LevelsDescription:
The Combined SmartComment & Dynamic S/R Levels script is designed to provide valuable insights for traders using TradingView. It integrates dynamic support and resistance levels with a powerful Intelligent Comment system to enhance decision-making. The Intelligent Comment feature generates market commentary based on key technical indicators, delivering real-time actionable feedback that helps optimize trading strategies.
Intelligent Comment Feature:
The Intelligent Comment function continuously analyzes market conditions and offers relevant insights based on combinations of various technical indicators such as RSI, ATR, MACD, WMA, and others. These comments help traders identify potential price movements, highlighting opportunities to buy, sell, or wait.
Examples of the insights provided by the system include:
RSI in overbought/oversold and price near resistance/support: Indicates potential price reversal points.
Price above VAH and volume increasing: Suggests a strengthening uptrend.
Price near dynamic support/resistance: Alerts when price approaches critical support or resistance zones.
MACD crossovers and RSI movements: Provide signals for potential trend shifts or continuations.
Indicators Used:
RSI (Relative Strength Index)
ATR (Average True Range)
MACD (Moving Average Convergence Divergence)
WMA (Weighted Moving Average)
POC (Point of Control)
Bollinger Bands
SuperSignal
Volume
EMA (Exponential Moving Average)
Dynamic Support/Resistance Levels
How It Works:
The script performs real-time market analysis, assessing multiple technical indicators to generate Intelligent Comments. These comments provide traders with timely guidance on potential market movements, assisting with decision-making in a dynamic market environment. The script also integrates dynamic support and resistance levels to further enhance trading accuracy.
MERCURY-PRO by DrAbhiramSivprasd“MERCURYPRO”
The MERCURYPRO indicator is a custom technical analysis tool designed to provide dynamic trend signals based on a combination of the Chande Momentum Oscillator (CMO) and Standard Deviation (StDev). This indicator helps traders identify trend reversals or continuation based on the behavior of the price and momentum.
Key Features:
• Source Input: The indicator works with any price data, with the default set to close, which represents the closing price of each bar.
• Length Input: A period (default value 9) is used to determine the calculation window for the Chande Momentum Oscillator and Standard Deviation.
• Fixed CMO Length Option: Users can choose whether to use a fixed CMO length of 9 or adjust the length to the user-defined pds value.
• Calculation Method: The indicator allows switching between using the Chande Momentum Oscillator (CMO) or Standard Deviation (StDev) for the momentum calculation.
• Alpha: The smoothing factor used in the calculation of the MERCURYPRO value, which is based on the length of the period input (pds).
Core Calculation:
1. Momentum Calculation: The script calculates the momentum by determining the change in the source price (e.g., close) from one period to the next.
2. Chande Momentum Oscillator (CMO): The positive and negative momentum components are calculated and then summed over the specified period. This value is normalized to a percentage to determine the momentum strength.
3. K Value Calculation: The script selects either the CMO or Standard Deviation (depending on the user setting) to calculate the k value, which represents the dynamic price momentum.
4. MERCURYPRO Line: The final output of the indicator, MERCURYPRO, is computed using a weighted average of the k value and the previous MERCURYPRO value. The line is smoothed using the Alpha parameter.
Plot and Signal Generation:
• Color Coding: The line is color-coded based on the direction of MERCURYPRO:
• Blue: The trend is bullish (MERCURYPRO is rising).
• Maroon: The trend is bearish (MERCURYPRO is falling).
• Default Blue: Neutral or sideways market conditions.
• Plotting: The MERCURYPRO line is plotted with varying colors depending on the trend direction.
Alerts:
• Color Change Alert: The indicator has an alert condition based on when the MERCURYPRO line crosses its previous value. This helps traders stay informed about potential trend reversals or continuation signals.
Use Case:
• Trend Confirmation: Traders can use the MERCURYPRO indicator to identify whether the market is in a strong trend or not.
• Signal for Entries/Exits: The color change and crossovers of the MERCURYPRO line can be used as entry or exit signals, depending on the trader’s strategy.
Overall Purpose:
The MERCURYPRO indicator combines momentum analysis with smoothing techniques to offer a dynamic, responsive tool for identifying market trends and potential reversals. It is particularly useful in conjunction with other technical indicators to provide confirmation for trade setups.
How to Use the MERCURYPRO Indicator:
The MERCURYPRO indicator is designed to help traders identify trend reversals and market conditions. Here are a few ways you can use it:
1. Trend Confirmation (Bullish or Bearish)
• Bullish Trend: When the MERCURYPRO line is colored Blue, it indicates a rising trend, suggesting that the market is bullish.
• Action: You can consider entering long positions when the line turns blue, or holding your existing positions if you’re already long.
• Bearish Trend: When the MERCURYPRO line is colored Maroon, it signals a downward trend, indicating a bearish market.
• Action: You may consider entering short positions or closing any long positions when the line turns maroon.
2. Trend Reversal Alerts
• Color Change: The MERCURYPRO indicator changes color when there’s a trend reversal. The alert condition triggers when the MERCURYPRO crosses above or below its previous value, signaling a potential shift in the trend.
• Action: You can use this alert as a signal to monitor potential entry or exit points for trades. For example, a crossover from maroon to blue could indicate a potential buying opportunity, while a crossover from blue to maroon could suggest a selling opportunity.
3. Use with Other Indicators for Confirmation
• While the MERCURYPRO provides valuable trend insights, it’s often more effective when used in combination with other indicators like RSI (Relative Strength Index), MACD, or moving averages to confirm signals.
• Example: If MERCURYPRO turns blue and RSI is above 50, it may signal a strong bullish trend, enhancing the confidence to enter a long trade.
4. Divergence
• Watch for divergence between the MERCURYPRO line and the price chart:
• Bullish Divergence: If the price makes new lows while MERCURYPRO is showing higher lows, it suggests a potential bullish reversal.
• Bearish Divergence: If the price makes new highs while MERCURYPRO is showing lower highs, it suggests a potential bearish reversal.
Example of Use:
• Example 1: If the MERCURYPRO line changes from maroon to blue, you might enter a long position. After the MERCURYPRO line turns blue, use an alert to monitor the price action. If other indicators (like RSI) also suggest strength, your confidence in the trade will increase.
• Example 2: If the MERCURYPRO line shifts from blue to maroon, it could be a signal to close long positions and consider shorting the market if other conditions align (e.g., moving averages also turn bearish).
Warning for Using the MERCURYPRO Indicator:
1. Lagging Indicator:
• The MERCURYPRO is a lagging indicator, meaning it responds to price changes after they have occurred. This may delay entry and exit signals, and it’s crucial to combine it with other leading indicators to get timely information.
2. False Signals in Range-bound Markets:
• In choppy or sideways markets, the MERCURYPRO line can produce false signals, flipping between blue and maroon frequently without showing a clear trend. It’s important to avoid trading based on these false signals when the market is not trending.
3. Overreliance on One Indicator:
• Relying solely on MERCURYPRO can be risky. Always confirm signals with additional tools like volume analysis, price action, or other indicators to increase the accuracy of your trades.
4. Market Conditions Matter:
• The indicator may work well in trending markets, but in highly volatile or news-driven environments, it may provide misleading signals. Ensure that you take market fundamentals and external news events into consideration before acting on the indicator’s signals.
5. Risk Management:
• As with any technical indicator, MERCURYPRO is not infallible. Always use appropriate risk management techniques such as stop-loss orders to protect your capital. Never risk more than you can afford to lose on a trade.
6. Backtest First:
• Before implementing MERCURYPRO in live trading, make sure to backtest it on historical data. Test the strategy with various market conditions to assess its effectiveness and identify any potential weaknesses.
By considering these guidelines and warnings, you can use the MERCURYPRO indicator more effectively and mitigate potential risks in your trading strategy.
DeepSignalFilterHelpersLibrary "DeepSignalFilterHelpers"
filter_intraday_intensity(useIiiFilter)
Parameters:
useIiiFilter (bool)
filter_vwma(src, length, useVwmaFilter)
Parameters:
src (float)
length (int)
useVwmaFilter (bool)
filter_nvi(useNviFilter)
Parameters:
useNviFilter (bool)
filter_emv(length, emvThreshold, useEmvFilter, useMovingAvg)
EMV filter for filtering signals based on Ease of Movement
Parameters:
length (int) : The length of the EMV calculation
emvThreshold (float) : The EMV threshold
useEmvFilter (bool) : Whether to apply the EMV filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_adi(length, threshold, useAdiFilter, useMovingAvg)
ADI filter for filtering signals based on Accumulation/Distribution Index
Parameters:
length (int) : The length of the ADI moving average calculation
threshold (float) : The ADI threshold
useAdiFilter (bool) : Whether to apply the ADI filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_mfi(length, mfiThreshold, useMfiFilter, useMovingAvg)
MFI filter for filtering signals based on Money Flow Index
Parameters:
length (int) : The length of the MFI calculation
mfiThreshold (float) : The MFI threshold
useMfiFilter (bool) : Whether to apply the MFI filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
detect_obv_states(obvThresholdStrong, obvThresholdModerate, lookbackPeriod, obvMode)
detect_obv_states: Identify OBV states with three levels (Strong, Moderate, Weak) over a configurable period
Parameters:
obvThresholdStrong (float) : Threshold for strong OBV movements
obvThresholdModerate (float) : Threshold for moderate OBV movements
lookbackPeriod (int) : Number of periods to analyze OBV trends
obvMode (string) : OBV mode to filter ("Strong", "Moderate", "Weak")
Returns: OBV state ("Strong Up", "Moderate Up", "Weak Up", "Positive Divergence", "Negative Divergence", "Consolidation", "Weak Down", "Moderate Down", "Strong Down")
filter_obv(src, length, obvMode, threshold, useObvFilter, useMovingAvg)
filter_obv: Filter signals based on OBV states
Parameters:
src (float) : The source series (default: close)
length (int) : The length of the OBV moving average calculation
obvMode (string) : OBV mode to filter ("Strong", "Moderate", "Weak")
threshold (float) : Optional threshold for additional filtering
useObvFilter (bool) : Whether to apply the OBV filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_cmf(length, cmfThreshold, useCmfFilter, useMovingAvg)
CMF filter for filtering signals based on Chaikin Money Flow
Parameters:
length (int) : The length of the CMF calculation
cmfThreshold (float) : The CMF threshold
useCmfFilter (bool) : Whether to apply the CMF filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_vwap(useVwapFilter)
VWAP filter for filtering signals based on Volume-Weighted Average Price
Parameters:
useVwapFilter (bool) : Whether to apply the VWAP filter
Returns: Filtered result indicating whether the signal should be used
filter_pvt(length, pvtThreshold, usePvtFilter, useMovingAvg)
PVT filter for filtering signals based on Price Volume Trend
Parameters:
length (int) : The length of the PVT moving average calculation
pvtThreshold (float) : The PVT threshold
usePvtFilter (bool) : Whether to apply the PVT filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_vo(shortLength, longLength, voThreshold, useVoFilter, useMovingAvg)
VO filter for filtering signals based on Volume Oscillator
Parameters:
shortLength (int) : The length of the short-term volume moving average
longLength (int) : The length of the long-term volume moving average
voThreshold (float) : The Volume Oscillator threshold
useVoFilter (bool) : Whether to apply the VO filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_cho(shortLength, longLength, choThreshold, useChoFilter, useMovingAvg)
CHO filter for filtering signals based on Chaikin Oscillator
Parameters:
shortLength (int) : The length of the short-term ADI moving average
longLength (int) : The length of the long-term ADI moving average
choThreshold (float) : The Chaikin Oscillator threshold
useChoFilter (bool) : Whether to apply the CHO filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_fi(length, fiThreshold, useFiFilter, useMovingAvg)
FI filter for filtering signals based on Force Index
Parameters:
length (int) : The length of the FI calculation
fiThreshold (float) : The Force Index threshold
useFiFilter (bool) : Whether to apply the FI filter
useMovingAvg (bool) : Whether to use moving average as threshold
Returns: Filtered result indicating whether the signal should be used
filter_garman_klass_volatility(length, useGkFilter)
Parameters:
length (int)
useGkFilter (bool)
filter_frama(src, length, useFramaFilter)
Parameters:
src (float)
length (int)
useFramaFilter (bool)
filter_bollinger_bands(src, length, stdDev, useBollingerFilter)
Parameters:
src (float)
length (int)
stdDev (float)
useBollingerFilter (bool)
filter_keltner_channel(src, length, atrMult, useKeltnerFilter)
Parameters:
src (float)
length (simple int)
atrMult (float)
useKeltnerFilter (bool)
regime_filter(src, threshold, useRegimeFilter)
Regime filter for filtering signals based on trend strength
Parameters:
src (float) : The source series
threshold (float) : The threshold for the filter
useRegimeFilter (bool) : Whether to apply the regime filter
Returns: Filtered result indicating whether the signal should be used
regime_filter_v2(src, threshold, useRegimeFilter)
Regime filter for filtering signals based on trend strength
Parameters:
src (float) : The source series
threshold (float) : The threshold for the filter
useRegimeFilter (bool) : Whether to apply the regime filter
Returns: Filtered result indicating whether the signal should be used
filter_adx(src, length, adxThreshold, useAdxFilter)
ADX filter for filtering signals based on ADX strength
Parameters:
src (float) : The source series
length (simple int) : The length of the ADX calculation
adxThreshold (int) : The ADX threshold
useAdxFilter (bool) : Whether to apply the ADX filter
Returns: Filtered result indicating whether the signal should be used
filter_volatility(minLength, maxLength, useVolatilityFilter)
Volatility filter for filtering signals based on volatility
Parameters:
minLength (simple int) : The minimum length for ATR calculation
maxLength (simple int) : The maximum length for ATR calculation
useVolatilityFilter (bool) : Whether to apply the volatility filter
Returns: Filtered result indicating whether the signal should be used
filter_ulcer(src, length, ulcerThreshold, useUlcerFilter)
Ulcer Index filter for filtering signals based on Ulcer Index
Parameters:
src (float) : The source series
length (int) : The length of the Ulcer Index calculation
ulcerThreshold (float) : The Ulcer Index threshold (default: average Ulcer Index)
useUlcerFilter (bool) : Whether to apply the Ulcer Index filter
Returns: Filtered result indicating whether the signal should be used
filter_stddev(src, length, stdDevThreshold, useStdDevFilter)
Standard Deviation filter for filtering signals based on Standard Deviation
Parameters:
src (float) : The source series
length (int) : The length of the Standard Deviation calculation
stdDevThreshold (float) : The Standard Deviation threshold (default: average Standard Deviation)
useStdDevFilter (bool) : Whether to apply the Standard Deviation filter
Returns: Filtered result indicating whether the signal should be used
filter_macdv(src, shortLength, longLength, signalSmoothing, macdVThreshold, useMacdVFilter)
MACD-V filter for filtering signals based on MACD-V
Parameters:
src (float) : The source series
shortLength (simple int) : The short length for MACD calculation
longLength (simple int) : The long length for MACD calculation
signalSmoothing (simple int) : The signal smoothing length for MACD
macdVThreshold (float) : The MACD-V threshold (default: average MACD-V)
useMacdVFilter (bool) : Whether to apply the MACD-V filter
Returns: Filtered result indicating whether the signal should be used
filter_atr(length, atrThreshold, useAtrFilter)
ATR filter for filtering signals based on Average True Range (ATR)
Parameters:
length (simple int) : The length of the ATR calculation
atrThreshold (float) : The ATR threshold (default: average ATR)
useAtrFilter (bool) : Whether to apply the ATR filter
Returns: Filtered result indicating whether the signal should be used
filter_candle_body_and_atr(length, bodyThreshold, atrThreshold, useFilter)
Candle Body and ATR filter for filtering signals
Parameters:
length (simple int) : The length of the ATR calculation
bodyThreshold (float) : The threshold for candle body size (relative to ATR)
atrThreshold (float) : The ATR threshold (default: average ATR)
useFilter (bool) : Whether to apply the candle body and ATR filter
Returns: Filtered result indicating whether the signal should be used
filter_atrp(length, atrpThreshold, useAtrpFilter)
ATRP filter for filtering signals based on ATR Percentage (ATRP)
Parameters:
length (simple int) : The length of the ATR calculation
atrpThreshold (float) : The ATRP threshold (default: average ATRP)
useAtrpFilter (bool) : Whether to apply the ATRP filter
Returns: Filtered result indicating whether the signal should be used
filter_jma(src, length, phase, useJmaFilter)
Parameters:
src (float)
length (simple int)
phase (float)
useJmaFilter (bool)
filter_cidi(src, rsiLength, shortMaLength, longMaLength, useCidiFilter)
Parameters:
src (float)
rsiLength (simple int)
shortMaLength (int)
longMaLength (int)
useCidiFilter (bool)
filter_rsi(src, length, rsiThreshold, useRsiFilter)
Parameters:
src (float)
length (simple int)
rsiThreshold (float)
useRsiFilter (bool)
filter_ichimoku_oscillator(length, threshold, useFilter)
Ichimoku Oscillator filter for filtering signals based on Ichimoku Oscillator
Parameters:
length (int) : The length of the Ichimoku Oscillator calculation
threshold (float) : The threshold for the filter (default: average Ichimoku Oscillator)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_cmb_composite_index(src, shortLength, longLength, threshold, useFilter)
CMB Composite Index filter for filtering signals based on CMB Composite Index
Parameters:
src (float) : The source series
shortLength (simple int) : The short length for CMB calculation
longLength (simple int) : The long length for CMB calculation
threshold (float) : The threshold for the filter (default: average CMB Composite Index)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_connors_rsi(src, rsiLength, rocLength, streakLength, threshold, useFilter)
Connors RSI filter for filtering signals based on Connors RSI
Parameters:
src (float) : The source series
rsiLength (simple int) : The length for RSI calculation
rocLength (int) : The length for ROC calculation
streakLength (simple int) : The length for streak calculation
threshold (float) : The threshold for the filter (default: average Connors RSI)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_coppock_curve(src, roc1Length, roc2Length, wmaLength, threshold, useFilter)
Coppock Curve filter for filtering signals based on Coppock Curve
Parameters:
src (float) : The source series
roc1Length (int) : The length for the first ROC calculation
roc2Length (int) : The length for the second ROC calculation
wmaLength (int) : The length for the WMA calculation
threshold (float) : The threshold for the filter (default: average Coppock Curve)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_pmo(src, pmoLength, smoothingLength, threshold, useFilter)
DecisionPoint Price Momentum Oscillator filter for filtering signals based on PMO
Parameters:
src (float) : The source series
pmoLength (simple int) : The length for PMO calculation
smoothingLength (simple int) : The smoothing length for PMO
threshold (float) : The threshold for the filter (default: average PMO Oscillator)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_macd(src, shortLength, longLength, signalSmoothing, threshold, useFilter)
MACD filter for filtering signals based on MACD
Parameters:
src (float) : The source series
shortLength (simple int) : The short length for MACD calculation
longLength (simple int) : The long length for MACD calculation
signalSmoothing (simple int) : The signal smoothing length for MACD
threshold (float) : The threshold for the filter (default: average MACD)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_macd_histogram(src, shortLength, longLength, signalSmoothing, threshold, useFilter)
MACD-Histogram filter for filtering signals based on MACD-Histogram
Parameters:
src (float) : The source series
shortLength (simple int) : The short length for MACD calculation
longLength (simple int) : The long length for MACD calculation
signalSmoothing (simple int) : The signal smoothing length for MACD
threshold (float) : The threshold for the filter (default: average MACD-Histogram)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_kst(src, r1, r2, r3, r4, sm1, sm2, sm3, sm4, signalLength, threshold, useFilter)
Pring's Know Sure Thing filter for filtering signals based on KST
Parameters:
src (float) : The source series
r1 (int) : The first ROC length
r2 (int) : The second ROC length
r3 (int) : The third ROC length
r4 (int) : The fourth ROC length
sm1 (int) : The first smoothing length
sm2 (int) : The second smoothing length
sm3 (int) : The third smoothing length
sm4 (int) : The fourth smoothing length
signalLength (int) : The signal line smoothing length
threshold (float) : The threshold for the filter (default: average KST Oscillator)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_special_k(src, r1, r2, r3, r4, sm1, sm2, sm3, sm4, threshold, useFilter)
Pring's Special K filter for filtering signals based on Special K
Parameters:
src (float) : The source series
r1 (int) : The first ROC length
r2 (int) : The second ROC length
r3 (int) : The third ROC length
r4 (int) : The fourth ROC length
sm1 (int) : The first smoothing length
sm2 (int) : The second smoothing length
sm3 (int) : The third smoothing length
sm4 (int) : The fourth smoothing length
threshold (float) : The threshold for the filter (default: average Special K)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_roc_momentum(src, rocLength, momentumLength, threshold, useFilter)
ROC and Momentum filter for filtering signals based on ROC and Momentum
Parameters:
src (float) : The source series
rocLength (int) : The length for ROC calculation
momentumLength (int) : The length for Momentum calculation
threshold (float) : The threshold for the filter (default: average ROC and Momentum)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_rrg_relative_strength(src, length, threshold, useFilter)
RRG Relative Strength filter for filtering signals based on RRG Relative Strength
Parameters:
src (float) : The source series
length (int) : The length for RRG Relative Strength calculation
threshold (float) : The threshold for the filter (default: average RRG Relative Strength)
useFilter (bool) : Whether to apply the filter
Returns: Filtered result indicating whether the signal should be used
filter_alligator(useFilter)
Parameters:
useFilter (bool)
filter_wyckoff(useFilter)
Parameters:
useFilter (bool)
filter_squeeze_momentum(bbLength, bbStdDev, kcLength, kcMult, useFilter)
Parameters:
bbLength (int)
bbStdDev (float)
kcLength (simple int)
kcMult (float)
useFilter (bool)
filter_atr_compression(length, atrThreshold, useFilter)
Parameters:
length (simple int)
atrThreshold (float)
useFilter (bool)
filter_low_volume(length, useFilter)
Parameters:
length (int)
useFilter (bool)
filter_nvi_accumulation(useFilter)
Parameters:
useFilter (bool)
filter_ma_slope(src, length, slopeThreshold, useFilter)
Parameters:
src (float)
length (int)
slopeThreshold (float)
useFilter (bool)
filter_adx_low(len, lensig, adxThreshold, useFilter)
Parameters:
len (simple int)
lensig (simple int)
adxThreshold (int)
useFilter (bool)
filter_choppiness_index(length, chopThreshold, useFilter)
Parameters:
length (int)
chopThreshold (float)
useFilter (bool)
filter_range_detection(length, useFilter)
Parameters:
length (int)
useFilter (bool)
Global Index Spread RSI StrategyThis strategy leverages the relative strength index (RSI) to monitor the price spread between a global benchmark index (such as AMEX) and the currently opened asset in the chart window. By calculating the spread between these two, the strategy uses RSI to identify oversold and overbought conditions to trigger buy and sell signals.
Key Components:
Global Benchmark Index: The strategy compares the current asset with a predefined global index (e.g., AMEX) to measure relative performance. The choice of a global benchmark allows the trader to analyze the current asset's movement in the context of broader market trends.
Spread Calculation:
The spread is calculated as the percentage difference between the current asset's closing price and the global benchmark index's closing price:
Spread=Current Asset Close−Global Index CloseGlobal Index Close×100
Spread=Global Index CloseCurrent Asset Close−Global Index Close×100
This metric provides a measure of how the current asset is performing relative to the global index. A positive spread indicates the asset is outperforming the benchmark, while a negative spread signals underperformance.
RSI of the Spread: The RSI is then calculated on the spread values. The RSI is a momentum oscillator that ranges from 0 to 100 and is commonly used to identify overbought or oversold conditions in asset prices. An RSI below 30 is considered oversold, indicating a potential buying opportunity, while an RSI above 70 is overbought, suggesting that the asset may be due for a pullback.
Strategy Logic:
Entry Condition: The strategy enters a long position when the RSI of the spread falls below the oversold threshold (default 30). This suggests that the asset may have been oversold relative to the global benchmark and might be due for a reversal.
Exit Condition: The strategy exits the long position when the RSI of the spread rises above the overbought threshold (default 70), indicating that the asset may have become overbought and a price correction is likely.
Visual Reference:
The RSI of the spread is plotted on the chart for visual reference, making it easier for traders to monitor the relative strength of the asset in relation to the global benchmark.
Overbought and oversold levels are also drawn as horizontal reference lines (70 and 30), along with a neutral level at 50 to show market equilibrium.
Theoretical Basis:
The strategy is built on the mean reversion principle, which suggests that asset prices tend to revert to a long-term average over time. When prices move too far from this mean—either being overbought or oversold—they are likely to correct back toward equilibrium. By using RSI to identify these extremes, the strategy aims to profit from price reversals.
Mean Reversion: According to financial theory, asset prices oscillate around a long-term average, and any extreme deviation (overbought or oversold conditions) presents opportunities for price corrections (Poterba & Summers, 1988).
Momentum Indicators (RSI): The RSI is widely used in technical analysis to measure the momentum of an asset. Its application to the spread between the asset and a global benchmark allows for a more nuanced view of relative performance and potential turning points in the asset's price trajectory.
Practical Application:
This strategy works best in markets where relative strength is a key factor in decision-making, such as in equity indices, commodities, or forex markets. By assessing the performance of the asset relative to a global benchmark and utilizing RSI to identify extremes in price movements, the strategy helps traders to make more informed decisions based on potential mean reversion points.
While the "Global Index Spread RSI Strategy" offers a method for identifying potential price reversals based on relative strength and oversold/overbought conditions, it is important to recognize that no strategy is foolproof. The strategy assumes that the historical relationship between the asset and the global benchmark will hold in the future, but financial markets are subject to a wide array of unpredictable factors that can lead to sudden changes in price behavior.
Risk of False Signals:
The strategy relies heavily on the RSI to trigger buy and sell signals. However, like any momentum-based indicator, RSI can generate false signals, particularly in highly volatile or trending markets. In such conditions, the strategy may enter positions too early or exit too late, leading to potential losses.
Market Context:
The strategy may not account for macroeconomic events, news, or other market forces that could cause sudden shifts in asset prices. External factors, such as geopolitical developments, monetary policy changes, or financial crises, can cause a divergence between the asset and the global benchmark, leading to incorrect conclusions from the strategy.
Overfitting Risk:
As with any strategy that uses historical data to make decisions, there is a risk of overfitting the model to past performance. This could result in a strategy that works well on historical data but performs poorly in live trading conditions due to changes in market dynamics.
Execution Risks:
The strategy does not account for slippage, transaction costs, or liquidity issues, which can impact the execution of trades in real-market conditions. In fast-moving markets, prices may move significantly between order placement and execution, leading to worse-than-expected entry or exit prices.
No Guarantee of Profit:
Past performance is not necessarily indicative of future results. The strategy should be used with caution, and risk management techniques (such as stop losses and position sizing) should always be implemented to protect against significant losses.
Traders should thoroughly test and adapt the strategy in a simulated environment before applying it to live trades, and consider seeking professional advice to ensure that their trading activities align with their risk tolerance and financial goals.
References:
Poterba, J. M., & Summers, L. H. (1988). Mean Reversion in Stock Prices: Evidence and Implications. Journal of Financial Economics, 22(1), 27-59.
Bullish B's - RSI Divergence StrategyThis indicator strategy is an RSI (Relative Strength Index) divergence trading tool designed to identify high-probability entry and exit points based on trend shifts. It utilizes both regular and hidden RSI divergence patterns to spot potential reversals, with signals for both bullish and bearish conditions.
Key Features
Divergence Detection:
Bullish Divergence: Signals when RSI indicates momentum strengthening at a lower price level, suggesting a reversal to the upside.
Bearish Divergence: Signals when RSI shows weakening momentum at a higher price level, indicating a potential downside reversal.
Hidden Divergences: Looks for hidden bullish and bearish divergences, which signal trend continuation points where price action aligns with the prevailing trend.
Volume-Adjusted Entry Signals:
The strategy enters long trades when RSI shows bullish or hidden bullish divergence, indicating an upward momentum shift.
An optional volume filter ensures that only high-volume, high-conviction trades trigger a signal.
Exit Signals:
Exits long positions when RSI reaches a customizable overbought level, typically indicating a potential reversal or profit-taking opportunity.
Also closes positions if bearish divergence signals appear after a bullish setup, providing protection against trend reversals.
Trailing Stop-Loss:
Uses a trailing stop mechanism based on ATR (Average True Range) or a percentage threshold to lock in profits as the price moves in favor of the trade.
Alerts and Custom Notifications:
Integrated with TradingView alerts to notify the user when entry and exit conditions are met, supporting timely decision-making without constant monitoring.
Customizable Parameters:
Users can adjust the RSI period, pivot lookback range, overbought level, trailing stop type (ATR or percentage), and divergence range to fit their trading style.
Ideal Usage
This strategy is well-suited for trend traders and swing traders looking to capture reversals and trend continuations on medium to long timeframes. The divergence signals, paired with trailing stops and volume validation, make it adaptable for multiple asset classes, including stocks, forex, and crypto.
Summary
With its focus on RSI divergence, trailing stop-loss management, and volume filtering, this strategy aims to identify and capture trend changes with minimized risk. This allows traders to efficiently capture profitable moves and manage open positions with precision.
This Strategy BEST works with GLD!
Industry Group Strength - IndiaPresenting the Industry Group Strength Indicator for India market, designed to help traders identify top-performing stocks within specific industry groups that are predefined.
⦿ Identifies Leading Stocks in Industry Groups
⦿ Analyses the following metrics
YTD Return : Measures stock performance from the start of the year.
RS Rating : Relative Strength rating for user-selected periods.
% Return : Percentage return over a user-selected lookback period.
Features
This indicator dynamically recognises the industry group of the current stock on the chart and ranks stocks within that group based on predefined data points. Traders can add this indicator to focus on top-performing stocks relative to their industry.
⦿ Color-coded for Easy Visualisation
You can choose from the following key metrics to rank stocks:
YTD Return
RS Rating
% Return
⦿ Table Format with Performance Metrics Compact mode
Vertical View
Horizontal View
All of the three metrics are shown in the compact mode and the current stock that is viewed is highlighted!
Vertical view
Horizontal view
Stock Ranking
Stocks are ranked based on their performance within industry groups, enabling traders to easily spot leaders and laggards in each sector. Color-coded gradients visually represent the stocks’ performance rankings, with higher percentile rankings indicating better performance.
Relative Strength (RS)
Relative Strength (RS) compares a stock’s performance against the benchmark index. The RS value is normalized from 1 to 99, making it easier to compare across different stocks. A rising RS value indicates that the stock is outperforming the market, helping traders quickly gauge relative performance within industry groups.
Limitations
At the time of developing this indicator, Pine requests are limited to 40 per script so the predefined symbols had to be filtered to 40 per Industry group
Stocks Filters
Filters that are used to filter the stocks in an Industry group to have maximum of 40 stocks
⦿ Auto, Chemical, Engineering, Finance, Pharma
Market Cap >= 1000 Crores and Market Cap <= 60000 Crores
Price >= 30 and Price <= 6000
50 Days Average ( Price * Volume ) >= 6 Crores
⦿ For rest of the Industry groups
Market Cap >= 1000 Crores and Market Cap <= 100000 Crores
Price >= 20 and Price <= 10000
50 Days Average ( Price * Volume ) >= 3 Crores
Credits
This indicator is forked from the Script for US market by @Amphibiantrading Thanks Brandon for the beginning of this indicator.
This indicator is built on TradingView’s new dynamic requests feature, thanks to @PineCoders for making this possible!
Industry Group StrengthThe Industry Group Strength indicator is designed to help traders identify the best-performing stocks within specific industry groups. The movement of individual stocks is often closely tied to the overall performance of their industry. By focusing on industry groups, this indicator allows you to find the top-performing stocks within an industry.
Thanks to a recent Pine Script update, an indicator like this is now possible. Special thanks to @PineCoders for introducing the dynamic requests feature.
How this indicator works:
The indicator contains predefined lists of stocks for each industry group. To be included in these lists, stocks must meet the following basic filters:
Market capitalization over 2B
Price greater than $10
Primary listing status
Once the relevant stocks are filtered, the indicator automatically recognizes the industry group of the current stock displayed on the chart. It then retrieves and displays data for that entire industry group.
Data Points Available:
The user can choose between three different data points to rank and compare stocks:
YTD (Year-To-Date) Return: Measures how much a stock has gained or lost since the start of the year.
RS Rating: A relative strength rating for a user-selected lookback period (explained below).
% Return: The percentage return over a user-selected lookback period.
Stock Ranking:
Stocks are ranked based on their performance within their respective industry groups, allowing users to easily identify which stocks are leading or lagging behind others in the same sector.
Visualization:
The indicator presents stocks in a table format, with performance metrics displayed both as text labels and color-coded lines. The color gradient represents the percentile rank, making it visually clear which stocks are outperforming or underperforming within their industry group.
Relative Strength (RS):
Relative Strength (RS) measures a stock’s performance relative to a benchmark, typically the S&P 500 (the default setting). It is calculated by dividing the closing price of the stock by the closing price of the S&P 500.
If the stock rises while the S&P 500 falls, or if the stock rises more sharply than the S&P 500, the RS value increases. Conversely, if the stock falls while the S&P 500 rises, the RS value decreases. This indicator normalizes the RS value into a range from 1 to 99, allowing for easier comparison across different stocks, regardless of their raw performance. This normalized RS value helps traders quickly assess how a stock is performing relative to others.






















